package com.bread.tliaswebmanagement.service;

import com.bread.tliaswebmanagement.pojo.PageResult;
import com.bread.tliaswebmanagement.pojo.Student;
import com.bread.tliaswebmanagement.pojo.StudentQueryParam;

import java.util.List;

public interface StudentService {

    /**
     * 分页查询
     * @param studentQueryParam 查询参数
     * @return 分页查询学生列表
     */
    PageResult<Student> page(StudentQueryParam studentQueryParam);

    /**
     * 批量删除学生
     * @param ids 待删除的学生id集合
     */
    void deleteByIds(List<Integer> ids);

    /**
     * 添加学生
     * @param student 待添加的学生
     */
    void add(Student student);

    /**
     * 根据id查询学生
     * @param id 学生id
     * @return 学生
     */
    Student getById(Integer id);

    /**
     * 更新学生
     * @param student 待更新的学生
     */
    void update(Student student);

    /**
     * 更新学生违规分数
     * @param id 学生id
     * @param score 扣除分数
     */
    void updateViolation(Integer id, Integer score);
}
